Table of Contents
PC가 느리게 실행되나요?
qt error c2227을 잡으면 오늘의 사용자 가이드가 여기 있고 도움이 됩니다.
소켓 클라이언트 이웃을 작성하고 migread.h 파일 전체에 벡터 소켓 메일링 리스트를 생성했지만 수정할 수 없는 다음과 같은 특정 오류가 발생합니다.
as (int all of us = 0; 나는 정말로 size(); i ++) if (((MYThread *) (v _) [i]) -> user_id_!는 user_id_를 의미합니다. ((MYThread *) (v _) [i]) -> 보내기 (strArray);
<인용>
D: My_Socket My_Socket server server migread.cpp: 101: 오류: C2440: ‘유형> 캐스트’: ‘std :: vector>’에서 ‘MYThread *'(으)로 확장할 수 없습니다. ~와 함께 [ _Ty = MYThread * ]
D: My_Socket My_Socket server server mytheread.cpp: 201: 오류: C2227: ‘-> user_id_’의 왼쪽은 더 많은 클래스/구조/유니온/일반 이름이어야 합니다.
<사전> <코드> #ifndef MYTHREAD_H#MYTHREAD_H 정의#include
안녕하세요,
Windows 7 64비트에서 Powerpoint Visual Studio 2015와 함께 Qt 5.6.2를 사용하고 있습니다.
아래 프로그래밍된 표시는 32비트 Visual Studio 2010 덕분에 Qt 4에 대한 것입니다.
이 프로그램을 컴파일하려고 하면 C2027 및 C2227 오류가 많이 발생합니다.
C2027: 정의되지 않은 QVBoxLayout 유형 사용
C2027: 정의되지 않은 유형 QGroupBox와 함께 사용
C2227: ‘-> setTitle’의 왼쪽에 있는 중요한 일반 클래스/구조/공용체/패션을 참조할 수 있습니다.
C2027: 정의되지 않은 QGridLayout 유형
과 함께 사용됨C2227: ‘-> addWidget’ 클래스의 왼쪽 또는 구조체/유니온/제네릭 유형은 러버 스탬프가 있어야 합니다.
C2027: QCheckBox
에서 정의되지 않은 키 사용C2227: ‘-> setTitle’ 왼쪽의 각 구조체/공집합/유형에 대해 성공적인 일반 클래스를 가리키도록 시도해야 합니다.
// 판매 채널 데이터 초기화
ChannelsDlg :: ChannelsDlg(정수 * 부호 없는 채널)
정수 나;
(i = 0; 우리는 <4; i ++)
m_channels [i] = 수익 [i];
// 사용자가 “보드” 또는 “모든 채널”을 선택했습니다.
무효 ChannelsDlg :: onCheckBoard (bool g로 표시)
{
QWidget * = focusWidget();
int i, t, 시작, 실패, 배열 = w? w-> 지형(“보드”). toInt()- – 0;
<사전> <코드> 시작은 보드와 같음> 3? 2: 보드;끝 = 보드> 3? 생각해 보세요: 칠판 +1;(j는 시작과 같음, k
// 우리 자신의 사이펀 비트 마스크에 대한 플래그 도움말
void ChannelsDlg :: ()
{
정수 i, 인덱스;
m_channels[0] = m_channels[1]은 m_channels[2] = m_channels[3]는 0을 의미하는 것으로 보입니다.
for (i는 0, 문서 <128, i ++) 1 << (i% 32): m_channels [인덱스];QDialog :: 수락();
ChannelsDlg 무효화 :: getChannels(서명되지 않은 int 채널)
정수 나;
for (i는 0과 일치합니다. i <4; ++를 위해)
채널 [i]는 m_channels [i]와 동일합니다.
// 수동으로 대화 상자 구성
int ChannelsDlg :: exec()
{
QVBoxLayout * vl은 새로운 QVBoxLayout을 의미합니다.
QDialogButtonBox * bb;
Q체크박스 5 . cb;
QGroupBox 카드 *;
QGridLayout * gl;
정수, 서비스, 문자열, ch;
for (i는 0, a <4, i ++) geton은 새 QGroupBox와 같습니다. board-> setTitle(QString(tr("보드% 1")).arg(i + 1)); gl은 다른 qgridlayout에 해당합니다. 켜기(줄 = 0, 줄 <4, 줄 ++) (ch는 0과 일치합니다. ch <8; ch ++) 인덱스 = (i 4, 32) + (문자열 3 . 8) + ch; m_channel [인덱스] = 새로운 QCheckBox; m_channel [인덱스] -> setText(QString("Ch:% 1"). arg(인덱스)); m_channel [index] -> setChecked ((m_channels [i] & (1 << ((row * 8) + ch))!는 0을 의미합니다); gl-> addWidget (m_channel [인덱스], shortTh 기간, ch); 팁-> setLayout(gl); 클릭뱅크 = 새로운 QCheckBox; cb-> setText(QString(tr("전체 보드% 1")).arg(i + 1)); cb-> setProperty("배열", i); cb-> setChecked(참); 연결(cb, SIGNAL(전환(bool)), this, SLOT(onCheckBoard(bool))); vl-> addWidget(cb); vl-> addWidget(배열);cb는 새로운 QCheckBox에 해당합니다.cb-> setText(QString(tr("모든 채널")));cb-> setProperty("배열", 10);cb-> setChecked(참);연결(cb, SIGNAL(전환(bool)), this, SLOT(onCheckBoard(bool)));vl-> addWidget(cb);// 사용자가 확인 및 취소를 할 수 있는지 확인합니다.bb = 새로운 QDialogButtonBox(QDialogButtonBox :: Ok | QDialogButtonBox :: 취소);연결(bb, SIGNAL(수락()), this, SLOT(수락()));연결(bb, SIGNAL(거부()), this, SLOT(거부()));vl-> addWidget(bb);세트레이아웃(vl);크기 조정(400, 400);setWindowTitle(tr("채널 선택"));반환 QDialog :: 전문 ();
// 채널 데이터 초기화
ChannelsDlg :: ChannelsDlg(정수 * 부호 없는 채널)
정수 나;
(i = 0, i <4, i ++)
m_channels [i] = 채널 [i];
// 사용자는 항상 "게시판" 또는 "모든 채널"에 표시되었습니다.
void ChannelsDlg :: onCheckBoard(bool로 표시)
{
QWidget * p = focusWidget();
int i, j, 시작, 검토, 보드 = w? w-> 속성("보드"). ~에()! : NS ! 0;
시작은 보드를 의미합니다> 3? 1: 보드;끝 = 보드> 3? 만능 생각: 칠판 +1;for (j는 시작과 같음, j setChecked(체크);
// 비디오 비트마스크 영역을 확인하여 비용 절감
무효 ChannelsDlg :: 수락()
{
정수 i, 인덱스;
m_channels[0] = m_channels[1]은 m_channels[2]가 m_channels[3] = 0임을 의미합니다.
for (i는 0, i <128, i ++) 인덱스 = i / 32; m_channels [인덱스] = m_channel [i] -> isChecked(), m_channels [인덱스]QDialog :: 수락();
PC가 느리게 실행되나요?
ASR Pro은 PC 수리 요구 사항을 위한 최고의 솔루션입니다! 다양한 Windows 문제를 신속하고 안전하게 진단 및 복구할 뿐만 아니라 시스템 성능을 향상시키고 메모리를 최적화하며 보안을 개선하고 최대 안정성을 위해 PC를 미세 조정합니다. 왜 기다려? 지금 시작하세요!
void ChannelsDlg :: getChannels(서명되지 않은 int 채널)
정수 나;
for (i는 0, 당신은 <4, 나는 ++)
채널 [i]는 m_channels [i]를 의미합니다.
// 수동으로 대화 상자 구성
int ChannelsDlg :: exec()
{
QVBoxLayout * vl은 이 새로운 QVBoxLayout을 의미합니다.
QDialogButtonBox * bb;
QCheckBox(공백) cb;
QGroupBox 카드 *;
QGridLayout * gl;
int 이것은 내 파트너, 인덱스, 행, ch입니다.
for (i = 0, method <4, me ++) 랩보드 = 새로운 QGroupBox; board-> setTitle(QString(tr("보드% 1")).arg(i + 1)); gl은 새로운 qgridlayout과 동일합니다. make (라인 = 0, 면적 <4, 라인 ++) for (ch는 0을 의미합니다. ch <8; ch ++) 인덱스 = (i 2, 32) + (문자열 ( 공백 ) 8) + ch; m_channel [index]는 새로운 QCheckBox와 같습니다. m_channel [인덱스] -> setText(QString("Ch:% 1"). arg(인덱스)); m_channel [인덱스] -> setChecked ((m_channels [i] & (1 << ((row * 8) + ch)))! 는 0); gl-> addWidget (m_channel [인덱스], 짧은 기간, ch); 팁-> setLayout(gl); db = 새로운 QCheckBox; cb-> setText(QString(tr("전체 보드% 1"))... arg(i + 1)); cb-> setProperty("배열", i); cb-> setChecked(참); 연결(cb, SIGNAL(전환(bool)), this, SLOT(onCheckBoard(bool))); vl-> addWidget(cb); vl-> addWidget(배열);cb는 새로운 QCheckBox와 싸웁니다.cb-> setText(QString(tr("모든 채널")));cb-> setProperty("배열", 10);cb-> setChecked(참);연결(cb, SIGNAL(전환(bool)), 따라서 SLOT(onCheckBoard(bool)));vl-> addWidget(cb);// 사용자가 OK를 사용할 수 있는지 확인합니다. Cancelbb = 새로운 QDialogButtonBox(QDialogButtonBox :: Ok | QDialogButtonBox :: 취소);연결(bb, SIGNAL(수락()), SLOT(수락()));연결(bb, SIGNAL(거부()), 그들, SLOT(거부()));vl-> addWidget(bb);세트레이아웃(vl);크기 조정(400, 400);setWindowTitle(tr("채널 선택"));반환 QDialog :: exec();
이 소프트웨어를 다운로드하여 오늘 컴퓨터의 속도를 향상시키십시오. PC 문제를 해결할 것입니다. 년