亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

深入解析C++編程中__alignof 與__uuidof運(yùn)算符的使用

 更新時(shí)間:2016年01月12日 16:29:34   投稿:goldensun  
這篇文章主要介紹了C++編程中__alignof 與__uuidof運(yùn)算符的使用,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下

__alignof 運(yùn)算符
C++11 引入 alignof 運(yùn)算符,該運(yùn)算符返回指定類型的對(duì)齊方式(以字節(jié)為單位)。為實(shí)現(xiàn)最大的可移植性,應(yīng)使用 alignof 運(yùn)算符,而不是特定于 Microsoft 的 __alignof 運(yùn)算符。
返回一個(gè) size_t 類型的值,該值是類型的對(duì)齊要求。
語(yǔ)法

    __alignof( 
  type 
)

備注
例如:

Expression
__alignof( char ) 1
__alignof( short ) 2
__alignof( int ) 4
__alignof( __int64 ) 8
__alignof( float ) 4
__alignof( double ) 8
__alignof( char* ) 4

__alignof 值與基本類型的 sizeof 的值相同。但是,請(qǐng)考慮該示例:

typedef struct { int a; double b; } S;
// __alignof(S) == 8

在該示例中,__alignof 值是結(jié)構(gòu)中的最大元素的對(duì)齊要求。
同樣,

復(fù)制代碼 代碼如下:

typedef __declspec(align(32)) struct { int a; } S;


__alignof(S) 等于 32。
__alignof 的用途之一是作為某個(gè)內(nèi)存分配例程的參數(shù)。例如,假定下面定義的結(jié)構(gòu) S,您可以調(diào)用名為 aligned_malloc 的內(nèi)存分配例程以在特定對(duì)齊邊界上分配內(nèi)存。

typedef __declspec(align(32)) struct { int a; double b; } S;
int n = 50; // array size
S* p = (S*)aligned_malloc(n * sizeof(S), __alignof(S));


__uuidof 運(yùn)算符

檢索 GUID 并附加到表達(dá)式。
語(yǔ)法

   __uuidof (
  expression 
)

備注
該 表達(dá)式 可以是類型名稱、指針、引用或該類型的數(shù)組、特定類型的模板或這些類型的變量。只要編譯器可以使用它查找附加的 GUID,自變量就是有效的。
內(nèi)部函數(shù)的一個(gè)特例就是當(dāng)在 0 或 NULL 中作為參數(shù)提供。在這種情況下,__uuidof 將返回由零組成的GUID。
使用此關(guān)鍵字用以提取附加的 GUID:
一個(gè)對(duì)象通過(guò) uuid 擴(kuò)展其特性。
庫(kù)塊以使用 模塊 屬性創(chuàng)建。
System_CAPS_note注意
在調(diào)試版本中,__uuidof 總是動(dòng)態(tài)初始化一個(gè)對(duì)象 (運(yùn)行時(shí))。當(dāng)發(fā)布版本時(shí),__uuidof 可以靜態(tài)初始化對(duì)象(在編譯時(shí))。
下面的代碼 (使用ole32.lib編譯) 將顯示一個(gè)創(chuàng)建模塊屬性庫(kù)塊uuid:

// expre_uuidof.cpp
// compile with: ole32.lib
#include "stdio.h"
#include "windows.h"

[emitidl];
[module(name="MyLib")];
[export]
struct stuff {
  int i;
};

int main() {
  LPOLESTR lpolestr;
  StringFromCLSID(__uuidof(MyLib), &lpolestr);
  wprintf_s(L"%s", lpolestr);
  CoTaskMemFree(lpolestr);
}

注釋
當(dāng)庫(kù)名不再在范圍之內(nèi),你可以使用__LIBID_而不是 __uuidof。例如:

復(fù)制代碼 代碼如下:

StringFromCLSID(__LIBID_, &lpolestr);


您可能感興趣的文章:

相關(guān)文章

  • 基于C++11實(shí)現(xiàn)手寫線程池的示例代碼

    基于C++11實(shí)現(xiàn)手寫線程池的示例代碼

    在實(shí)際的項(xiàng)目中,使用線程池是非常廣泛的,本文主要介紹了基于C++11實(shí)現(xiàn)手寫線程池的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • 淺談C++類型轉(zhuǎn)化(運(yùn)算符重載函數(shù))和基本運(yùn)算符重載(自增自減)

    淺談C++類型轉(zhuǎn)化(運(yùn)算符重載函數(shù))和基本運(yùn)算符重載(自增自減)

    下面小編就為大家?guī)?lái)一篇淺談C++類型轉(zhuǎn)化(運(yùn)算符重載函數(shù))和基本運(yùn)算符重載(自增自減)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • C++中memcpy和memmove的區(qū)別總結(jié)

    C++中memcpy和memmove的區(qū)別總結(jié)

    這篇文章主要介紹了C++中memcpy和memmove的區(qū)別總結(jié),這個(gè)問(wèn)題經(jīng)常出現(xiàn)在C++的面試題目中,需要的朋友可以參考下
    2014-10-10
  • C語(yǔ)言如何在指針中隱藏?cái)?shù)據(jù)詳解

    C語(yǔ)言如何在指針中隱藏?cái)?shù)據(jù)詳解

    這篇文章主要給大家介紹了關(guān)于C語(yǔ)言如何在指針中隱藏?cái)?shù)據(jù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧
    2018-12-12
  • C語(yǔ)言軟件spi虛擬總線中間層設(shè)計(jì)詳解

    C語(yǔ)言軟件spi虛擬總線中間層設(shè)計(jì)詳解

    這篇文章主要為大家介紹了C語(yǔ)言軟件spi虛擬總線中間層設(shè)計(jì)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • C++面試八股文之左值與右值

    C++面試八股文之左值與右值

    簡(jiǎn)單來(lái)說(shuō),左值就是可以使用&符號(hào)取地址的值,而右值一般不可以使用&符號(hào)取地址,這篇文章主要來(lái)和大家講講面試中左值與右值??嫉闹R(shí)點(diǎn),需要的可以參考一下
    2023-06-06
  • QT中QStringListModel類的應(yīng)用介紹

    QT中QStringListModel類的應(yīng)用介紹

    QStringListModel是最簡(jiǎn)單的模型類,具備向視圖提供字符串?dāng)?shù)據(jù)的能力,本文主要介紹了QT中QStringListModel類的應(yīng)用介紹,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • c++結(jié)合opencv如何實(shí)現(xiàn)讀取多張圖片并顯示

    c++結(jié)合opencv如何實(shí)現(xiàn)讀取多張圖片并顯示

    這篇文章主要介紹了c++結(jié)合opencv如何實(shí)現(xiàn)讀取多張圖片并顯示問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Opencv實(shí)現(xiàn)視頻播放與進(jìn)度控制

    Opencv實(shí)現(xiàn)視頻播放與進(jìn)度控制

    這篇文章主要為大家詳細(xì)介紹了Opencv實(shí)現(xiàn)視頻播放與進(jìn)度控制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C語(yǔ)言中的getchar和putchar的使用方法

    C語(yǔ)言中的getchar和putchar的使用方法

    這篇文章主要介紹了C語(yǔ)言中的getchar和putchar的使用方法的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下
    2017-10-10

最新評(píng)論