Aracılığıyla paylaş


() Olmadan İşlev Adının Kullanılması Kod Üretmez

Programınızda bildirilen bir işlev adı parantez olmadan kullanıldığında, derleyici kod üretmez. Derleyici işlev adresini hesapladığı için işlevin parametre alıp almadığına bakılmaksızın bu durum oluşur; ancak, "()" işlev çağrısı işleci mevcut olmadığından çağrı yapılmaz. Bu sonuç aşağıdakine benzer:

// compile with /Wall to generate a warning
int a;
a;      // no code generated here either

Visual C++'da uyarı düzeyi 4 kullanıldığında bile tanılama çıkışı oluşturmaz. Uyarı verilmedi; kod üretilmemiş.

Aşağıdaki örnek kod derlenir (bir uyarıyla) ve hatasız doğru şekilde bağlanır, ancak başvurusunda kod üretmez funcn( ). Bunun düzgün çalışması için "()" işlev çağrısı işlecini ekleyin.

#include <stdio.h>
void funcn();

int main() {
   funcn;      /* missing function call operator;
                  call will fail.  Use funcn() */
   }

void funcn() {
   printf("\nHello World\n");
}

Ayrıca bkz.

Kodunuzu İyileştirme