簡體   English   中英

C ++-Visual Studio的成員函數聲明

[英]C++ - Member Function Declaration with Visual Studio

我正在使用Visual Studio為項目編寫類,我通過IDE菜單添加了該類,該類是公共的,頭文件包含在項目標題中,源文件包含在項目源文件中。

當我開始編寫第一個成員函數時,已經設置了構造函數,析構函數和私有成員,但出現此錯誤: 成員函數可能未在其類外部聲明

這是我在Visual Studio中編寫類的第一種類型,我知道Code :: Blocks需要一些鏈接代碼,這是一樣的情況嗎?

在標題中:

#pragma once
class myclass
{
public:
    myclass( /*parameters*/ );
    void foo ( /*parameters*/ ); //HERE
    ~myclass();
private:
    /* my data members */
};

在源文件中:

#include "stdafx.h"
#include "myclass.h"

myclass::myclass( /*parameters*/ )
{
    /*constructor code*/
}
void myclass::foo( /*parameters*/ ); //HERE
{
}
myclass::~myclass()
{
    /*destructor code*/
}

在此處刪除分號:

void myclass::foo( /*parameters*/ ); //Semicolon HERE
{
}

您不能在類定義之外聲明成員函數。 Visual Studio將其視為聲明,因為您放置了分號; 在方法foo的函數簽名結尾處,將其刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM